Skip to content

Writeup doc on Index While Building#212

Merged
jerrymarino merged 14 commits intomasterfrom
jmarino/index_while_building_v2_doc
Feb 25, 2021
Merged

Writeup doc on Index While Building#212
jerrymarino merged 14 commits intomasterfrom
jmarino/index_while_building_v2_doc

Conversation

@jerrymarino
Copy link
Contributor

## Land index while building V2 - first pass

1. Propose changes to `rules_swift` for compilation
2. Implement an aspect to quickly pull remotely built indexes
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In rules_ios, we currently look at BEP output to determine which indexstores were modified: https://github.com/bazel-ios/rules_ios/blob/master/tools/xcodeproj_shims/installers/indexstores.sh#L9

Introduced by this commit 609d9e5

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Initially we might able to use that that with the current rev of bazelbuild/rules_swift#567 without more effort 👍 .

Longer term the aspect can import indexes while we're waiting for deps to compile - VS waiting until the end. If we go with a BEP reader that is running during the build like in xcbuildkit we might be able tp piggy back on that https://github.com/jerrymarino/xcbuildkit/blob/master/Examples/BazelBuildService/main.swift#L19

time. Adding "Index while building" to Bazel needs special consideration to
both preserve performance characteristics of the original architecture of a
global index and interoperate with Bazel's remote execution and caching.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It might be useful to spell out how this design saves so much bandwidth on the cache VS current and the special sauce in MobileNativeFoundation/index-import#53 to computing what units and records to cache.

LMK what you think of these edits.
@jerrymarino jerrymarino enabled auto-merge (squash) February 25, 2021 19:42
@jerrymarino jerrymarino merged commit b1b08dc into master Feb 25, 2021
@jerrymarino jerrymarino deleted the jmarino/index_while_building_v2_doc branch February 25, 2021 20:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants